3D models are typically comprised of a set of connected points in 3D space, commonly referred to as vertices. The points are connected in such a way that a polygonal mesh structure is formed. In the most general case, the polygons may have any number of sides. In the following it is assumed that the polygons are all triangles. However, as any planar polygon can be divided into a set of triangles, the described graphics process does not suffer any loss of generality.
The introduction of 3D visualization is expected to be the next technological differentiator in consumer-oriented video devices. In the past few years, the complete chain, from the content generation to the viewing experience, has become increasingly mature. Many standard organizations have launched study groups on the transmission of 3D content. More and more 3D distributed applications increase the demand for efficient transmission of 3D models. Some distributed virtual reality (VR) applications even demand real-time on-request transmission of 3D models. Generally a standard client-server architecture is employed, in which a central server maintains a geometry database of the virtual environment and distributes object models to clients upon request. Because these 3D models may be complex and are usually large in number, the network bandwidth often becomes the bottleneck of such a system.
Currently there are mainly two approaches to encode the 3D models to reduce the amount of information that has to be sent through the network. The first approach is to apply a geometry-compression method to reduce the storage size of the models. Most geometry-compression methods consider the geometry information shared by neighboring polygons and reduce the amount of data needed to represent the polygon mesh.
The second approach is to encode the 3D models for progressive transmission. For this approach the models are converted in such a way that partially transmitted models can be rendered and progressively refined as more information is received. As a result, the client no longer needs to wait for the whole model to be transmitted before rendering, and it can thus provide a more immediate visual feedback to the user.
For the latter approach, the 3D model is decomposed into a base mesh and a sequence of progressive records. The base mesh represents the minimum-resolution model of the 3D object. A progressive record stores information of a vertex split that may slightly increase the resolution of the base mesh by introducing two triangles into it. Hence, by applying the sequence of progressive records to the base mesh, the model will gradually increase in resolution until it reaches the highest resolution when all the records have been applied. The resolution of the model can be decreased by reversing the above operation.
A few progressive methods have been developed in the past years. However, all these methods are based on the principle that the partially transmitted model should look like the original complete model with a subsequently increasing resolution. Therefore, initially the viewers are always confronted with a low resolution model.
More and more 3D distributed applications increase the demand for efficient transmission of 3D models. For example, in a 3D TV transmission network such as MPEG TS (MPEG Transport Stream), DVB (Digital Video Broadcasting) and CMMB (China Multimedia Mobile Broadcasting), many 3D programs are transmitted concurrently. 3D models need to be transmitted and rendered along with relevant 3D videos. Usually a 3D model has to be received completely before it can be rendered by a client. As these 3D models may be complex and are usually large in number, the network bandwidth often becomes the bottleneck of the transmission system.